//
//  Cliente.h
//  ProyectoMoviTiendas
//
//  Created by Daniel Paez on 3/6/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "Tienda.h"
#import "Item.h"
#import "Lista.h"
#import "Carrito.h"
#import "Barrio.h"

@interface Cliente : NSObject <NSCoding>
{
    @private
    /*
     Nombre del cliente
     */
    NSString * nombre;
    
    /**
     Direccion 1 del cliente
     */
    NSString * direccion1;
    
    
    /**
    Historial de carritos
     */    
    NSMutableArray * historial;
    
    /**
     Carritos actuales
     */    
    NSMutableArray * carritos;
    
    /**
    Tiendas favoritas
     */    
    Barrio * favoritas;
    
    /**
     Listas del cliente
     */
    NSMutableArray * listas;
    
    /**
     Barrio del cliente
     */
    Barrio * barrio;
    
}

@property(nonatomic) NSString * nombre, * direccion1;
@property(nonatomic,retain) NSMutableArray * historial, * carritos, * listas;
@property(nonatomic,retain) Barrio * barrio, * favoritas;

- (id)initConNombre: (NSString *) nombre
       conDireccion: (NSString *) dir1
          conBarrio: (Barrio *) barrio;

- (id)initConNombre: (NSString *) nombre
       conDireccion: (NSString *) dir1
 conCarritosActules: (NSMutableArray *) carritos
       conHistorial: (NSMutableArray *) historial
conTiendasFavoritas: (NSMutableArray *) favoritas
          conListas: (NSMutableArray *) listas
          conBarrio: (Barrio *) barrio;

- (void)agregarTiendaFavorita: (Tienda *) tienda;

- (BOOL)buscarTiendaEnFavoritas: (Tienda *) tienda;

- (void)agregarItemACarrito: (Item *) item;

- (void)agregarLista: (Lista *) lista;

- (void) eliminarItemDeCarrito:(Item *) item;

- (void) solictarDomicilio:(Carrito *) carrito conFecha:(NSDate *) fecha;

@end
